package com.shxs.mapper;

import com.shxs.model.entity.NovelTable;
import com.shxs.model.entity.VoiceRoleTable;

import java.util.List;


/**
 * 小说Mapper接口
 * 
 * @author ruoyi
 * @date 2024-05-31
 */
public interface NovelTableMapper 
{
    /**
     * 查询小说
     * 
     * @param novelId 小说主键
     * @return 小说
     */
    public NovelTable selectNovelTableByNovelId(Long novelId);

    /**
     * 查询小说列表
     * 
     * @param novelTable 小说
     * @return 小说集合
     */
    public List<NovelTable> selectNovelTableList(NovelTable novelTable);

    /**
     * 新增小说
     * 
     * @param novelTable 小说
     * @return 结果
     */
    public int insertNovelTable(NovelTable novelTable);

    /**
     * 修改小说
     * 
     * @param novelTable 小说
     * @return 结果
     */
    public int updateNovelTable(NovelTable novelTable);

    /**
     * 删除小说
     * 
     * @param novelId 小说主键
     * @return 结果
     */
    public int deleteNovelTableByNovelId(Long novelId);

    /**
     * 批量删除小说
     * 
     * @param novelIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteNovelTableByNovelIds(Long[] novelIds);

    /**
     * 批量删除${subTable.functionName}
     * 
     * @param novelIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteVoiceRoleTableByNovelIds(Long[] novelIds);
    
    /**
     * 批量新增${subTable.functionName}
     * 
     * @param voiceRoleTableList ${subTable.functionName}列表
     * @return 结果
     */
    public int batchVoiceRoleTable(List<VoiceRoleTable> voiceRoleTableList);

    /**
     * 通过小说主键删除${subTable.functionName}信息
     * 
     * @param novelId 小说ID
     * @return 结果
     */
    public int deleteVoiceRoleTableByNovelId(Long novelId);
}
